#include "xsane.h"
#include <QMessageBox>

Xsane::Xsane (QObject *parent) :
    QProcess (parent)
{
}
//------------------------------------------
QString Xsane::run (const QString& fileName)
{
    // exécuter la commande et tester le retour :
    // si != 0 : erreur. Ne pas retourner de fichier
    m_fileName = fileName;
    int result = execute (commandLine ());
    if (result != 0)
    {
        QString msg = tr ("XSane a renvoyé une erreur :\n%1").arg (QString (readAllStandardError ()));
        QMessageBox::critical (
                    0,
                    tr ("Erreur XSane"),
                    msg,
                    QMessageBox::Ok,
                    QMessageBox::Ok
                    );
    }

    return m_fileName;
}
//--------------------------------
QString Xsane::commandLine ()
{
    // commande à lancer
    QString command (commandText ().arg (m_fileName));
    // afficher la commande dans la console
    qDebug () << tr ("Exécute : %1").arg (command);
    return command;
}
